/*
 * ArchivoDocumentos.h
 *
 *  Created on: 29/05/2013
 *      Author: jonathan
 */

#ifndef ARCHIVODOCUMENTOS_H_
#define ARCHIVODOCUMENTOS_H_
#include <list>
#include "../estructuras/EntradaDocumento.h"
#include "../../commons/bitstream.h"
#include "../../commons/ArchivoUtils.h"
#include "../../commons/Compresor.h"
#include <string>
#include "../../commons/InfoRepositorioActual.h"

class ArchivoDocumentos {
private:
    BitStream* stream;
    Compresor* compresor;
    list<EntradaDocumento> listadocs;

public:
	ArchivoDocumentos(const FileName nombreRepo, const FileName salida, ios_base::openmode mode);
	void escribir(list<EntradaDocumento>& documentos);
	void recuperarDatos();
	void agregarDatosAdmin();
	std::string getDocumento(EnteroLargo nro);
	virtual ~ArchivoDocumentos();
};

#endif /* ARCHIVODOCUMENTOS_H_ */
